<template>
  <header class="header">
    <h1>todos</h1>
   
    <input v-model="chkAll" id="toggle-all" class="toggle-all" type="checkbox" />
    <label for="toggle-all"></label>
    <!-- 
      键盘事件的修饰符
        .enter 只能由回车键触发
        .其他键 代表只能由某个键触发
        
     -->
    <input
      class="new-todo"
      placeholder="输入任务名称-回车确认"
      autofocus
      v-model.trim="task"
      @keyup.enter="add"
    />
  </header>
</template>

<script>
export default {
  props: ['list'],
  data() {
    return {
      task: ''
    }
  },

  methods: {
    add () {
      
      // 非空判断
      if (this.task == '') return alert('请输入任务名称')

      // 不为空就把输入的内容加到数组里
      this.$emit('add', this.task)

      // 清空输入内容
      this.task = ''
    }
  },

  computed: {
    chkAll: {
      set (val) {
        this.list.forEach( v => v.isDone = val)
      },

      // 对计算属性取值
      get () {

        // 都选中才是true，有一个没选中就是false
        return this.list.every( v => v.isDone )
      }
    }
  }
}
</script>